home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-03-09 | 53.6 KB | 1,248 lines |
-
- ┌────────┐ MAH JONGG ┌────────┐
- │ ├┤ 3 │ Release 4.0 March 10, 1993 │ 0 0 8 │
- │ ├┤ │ │ 0 0 │
- │ ├┤ ├┤ │ Nels Anderson │ 0 0 │
- │ ├┤ ├┤ │ 92 Bishop Drive │ 0 0 │
- └────────┘ Framingham, MA 01701-6515 └────────┘
- U.S.A.
-
-
- Mah Jongg solitaire is based on an ancient Chinese game whose origins
- are supposed to date back some 3000 years. This version has
- similarities to solitaire played with cards and also with dominos since
- it is played with tiles. When I first discovered the game my initial
- impression was that the game would quickly become dull but having
- played it for a while and having given it to friends we've all found
- that it is quite addictive despite (or maybe because of) its apparent
- simplicity.
-
- The program requires an MS-DOS compatible PC that can run 640x350, 16
- color graphics. Either EGA or VGA video cards are capable of handling
- this video mode. If you're still running an older video card I'm
- afraid the game won't work. (Apparently many people do not understand
- the differences between EGA, CGA, VGA, MDA, etc.; basically, if you get
- a screen full of letters blinking on and off when you try to run Mah
- Jongg you don't have EGA and the game will not work on your system.)
- When I originally wrote Mah Jongg I had never seen a game that used the
- hi-res 16 color mode and I thought it would be nice if there was one.
-
- This version also supports Hercules graphics mode. Since it's
- monochrome it's not as pretty but the resolution is similar so it's not
- bad. The type of video you have is automatically detected, so you
- should not have to do anything to get the right mode.
-
- I hadn't planned on doing any versions other than EGA, but Hercules
- turned out to be so easy I figured, why not? Several people suggested
- adding a monochrome EGA mode for laptop systems that have an EGA
- compatible LCD or similar display. Since I'd already done all the work
- of making monochrome look right for the Hercules version, this was easy
- to add too. I don't have versions for other video adapters and I don't
- have any plans for them since I don't consider any of the lower
- resolutions adequate.
-
- If your system won't automatically select the right video mode for some
- reason, you can force a specific mode using command line parameters as
- follows:
-
- mahjongg -h (forces Hercules graphics mode)
- mahjongg -e (forces full color EGA graphics mode)
- mahjongg -l (forces monochrome EGA graphics mode)
-
- Under the Shareware system you may freely try out this program, but if
- you continue to use it you are expected to register with the author and
- pay the $15 (+ $2 S/H) registration fee. In return for your
- registration you'll receive the latest version of the game with the
- shareware notices removed, a setup program that allows you to
- permanently set the game options, plus additional tile sets and board
- layouts. There is also a "deluxe" version available which adds a
- binder, printed manual and quick reference card. The "deluxe" version
- is $22 (+ $4 shipping). Please note that all prices are U.S. dollars.
-
- If you live in the U.K. you can register through Nildram Software.
- Please print the file "UKORDER.TXT" for an order form all ready to go
- or just send #12.95 to:
-
- Nildram Software
- 26 Stanley Hill Avenue
- Amersham
- Bucks HP7 9BD
-
- When you register, please let me know what version you have and I'd
- also be interested in knowing where you got it from. Please, make sure
- to put your name and address on the letter! It's amazing how many
- people don't do this. Or, you can use the instant registration form in
- the file "ORDERFRM.TXT". Just copy the file to your printer using the
- DOS copy command ("copy orderfrm.txt prn" will do it).
-
- If you live outside the U.S., the best way to register appears to be by
- using postal money orders. I've received these from quite a few
- countries. In general, foreign checks are not accepted by U.S. banks
- (Canadian checks are an exception, but please allow for the difference
- in U.S. and Canadian dollars). EuroCheques, for example, are not
- acceptable to the bank. You can also charge your registration to VISA
- or MasterCard.
-
- If you don't understand the term "Shareware" please read the file
- "SHAREWRE.TXT".
-
- If you have any suggestions or discover any problems with the program
- you can reach me via the )(evious BBS (PCBoard) system (supports
- 300/1200/2400/9600/14400/16800, HST/v.32, 8N1) at 508-875-3618. Leave a
- C)omment to the sysop to reach me. )(evious is the official support BBS
- for all my software and the latest versions are always available for
- downloading there. There is also a support conference for people to
- exchange game tips or ask questions. J)oin conference #31 and check out
- the latest tips. Also check B)ulletin #1 for the latest versions list.
-
- You can registered Mah Jongg while on Xevious using your VISA or
- MasterCard. Once logged in, use the command "CREDIT" and just answer
- the prompts.
-
- You can also reach )(evious through RelayNet. If there's a RelayNet
- board in your area send a routed message to me at node XEVIOUS. The
- Shareware conference would be the best choice, but if that's not
- available try Games or even Common.
-
- I'm also available through CompuServe's email system. Send email to me
- at 71020,2613. Or join me and many other Shareware authors in the
- Shareware forum (GO SHAREWARE). Internet users can reach me this way
- by using the address 71020.2613@compuserve.com.
-
- Of course you can also write me at the address at the beginning of this
- file. If you're not a registered user please include a self-addressed,
- stamped envelope.
-
- Most of the instructions you'll need for playing the game are built
- into it; just type H when prompted at the title screen. Or you can
- read the instructions below. There is quite a bit of strategy involved
- if you are to do well but I'll leave the strategies up to you to
- discover. Besides, I'm no expert in playing the game either.
-
-
- *****************************************************************************
- * PLAYING THE GAME *
- *****************************************************************************
-
-
- OBJECT
-
- The object of the game is to remove as many of the tiles from the
- playing board as possible within the rules of the game. Tiles are
- always removed in pairs and can only be removed from the left or the
- right edges. Any tile that is not on a left or right edge is considered
- blocked and cannot be removed. Note though that the tiles are arranged
- in 5 levels and each level has a left and right edge so there are many
- more unblocked tiles than it would first appear. Note that the tile on
- the top of the pile blocks all four tiles below it, and tiles on row 5
- block both rows 4 and 6.
-
- SUITS OF TILES
-
- There are many different suits of tiles and the suit of a tile
- determines the rule used for matching tiles that can be removed
- together.
-
- MATCHING RULES
-
- Most of the tile suits require an exact match. This means that you must
- match a tile to another that is exactly the same. For example a Bamboo
- 1 matches another Bamboo 1 but does not match a Bamboo 3 or a Dot 1.
- The other matching rule allows any tile in the same suit to match any
- other tile in that suit. Thus, any of the four seasons (SUM, AUT, WIN,
- SPR) match each other and any of the four flowers (MUM, PLUM, BAM, ORC)
- match each other.
-
- NUMBER OF TILES
-
- There is only one each of SUM, AUT, WIN, SPR, MUM, PLUM, BAM, and ORC.
- There are four of each of the other tiles for a total of 144 tiles on
- the board. A counter keeps track of how many tiles are left in play.
- If you want to see what tiles you have removed so far, hit F2 or right
- click on the Help button (though some might consider this cheating!).
-
- ALTERNATE TILE SETS
-
- Mah Jongg can be played with tile sets other than the traditional
- Chinese tiles that are the default. These alternate sets can be
- selected using the command line option " -u" or from the setup menu.
- All tile sets are stored in files with names ending in ".til"; you do
- not need to include the ".til" when entering the file name.
-
- When using the " -u" command line option to load tile sets you have
- several options. You can choose a specific tile set (i.e., "mahjongg
- -uflags.til") or you can have any tile set chosen at random ("mahjongg
- -u*") or you can randomly choose a tile set that matches a specification
- of your choice (i.e., "mahjongg -ua*.til").
-
- Though these tiles will obviously look different from the standard set
- the same rules of play still apply; you will just have to determine
- which tiles correspond to which of the original suits. While playing
- you can hit the F8 key to see the full current set of tiles. In some
- sets of tiles you'll see that all four tiles in what was originally the
- seasons or flowers suits be the same. This effectively makes these
- suits work the same as the others, with each tile requiring an exact
- match.
-
- See the file TILEMAKR.DOC for information on making your own tile sets
- using the Tile Maker utility.
-
- ARCHIVING TILE SETS
-
- Tile sets can take up a lot of disk space, especially if you have a
- large collection of them. Mah Jongg gives you the option of compressing
- them using the archiver of your choice. To do this, you need to put
- each tile set file in a separate archive file. Both files should have
- the same name except for the extension (for example, if you are using
- PKzip you would put the tile set "MAHJONGG.TIL" in the archive file
- "MAHJONGG.ZIP").
-
- To tell Mah Jongg to use archived tile sets you either use the " -i"
- command line option (i.e., to use "*.ZIP" files you'd start up Mah
- Jongg with the command line "mahjongg -i*.zip") or you can use the
- setup menu. Once you've done this any tile sets loaded via the command
- line options or the setup menu will be selected from the files with the
- extension you specified.
-
- You can also use this feature to specify a different directory where
- your tile sets are kept. For example, if you are using "*.ZIP" files
- and keep them on your C: drive in a subdirectory called "TILES", you
- can tell Mah Jongg to use these tile sets with the command line
- "mahjongg -ic:\tiles\*.zip". In the setup menu you would use the
- archiver type setting and enter "c:\tiles\*.zip". You can also do this
- if your tile sets are not archived; just use "*.TIL" as the file
- specification.
-
- You can use any archiver you want, as Mah Jongg shells out and runs the
- archiver via a batch file called "TILEARCH.BAT". The batch file
- included with Mah Jongg knows how to handle the following archive
- types: ZIP, LZH, PAK, ARJ. If you wish to use a different archiver you
- can simply by selecting it when starting Mah Jongg and by editing the
- batch file. If you take a look at "TILEARCH.BAT" you'll find it's
- quite straightforward and anyone with experience writing batch files
- will have little trouble modifying it. Note that you must have the
- archiver program you selected either somewhere on your path or in the
- same disk directory as Mah Jongg.
-
- BOARD LAYOUT
-
- If you're using a mouse to play you don't need to worry about the board
- coordinates; you just point and click. Many game commands are also
- there as "keys" that can be clicked on. If you don't have a mouse,
- read on...
-
- The game board is a grid marked by letters and numbers. You select
- tiles by entering a letter for the column and a number for the row.
- Order doesn't matter, entering A5 is the same as 5A. The single tile on
- the topmost level is H5.
-
- The numbering of the rows is a bit confusing. Row 5 only exists at the
- very top level and at the extreme left and right edges. Rows 4 and 6
- are actually adjacent to each other.
-
- If after you've selected your first tile you change your mind, just
- hit the Enter key instead of your second tile selection. After you've
- selected both tiles they will immediately be removed. If you want,
- you can have the game ask you to confirm your move first by using the
- " -y" command line option or by enabling the Y/N prompts option from
- the setup menu.
-
- As an alternative to using the coordinates you can use a "keyboard
- mouse". This allows you to use the arrow keys to move a cursor to the
- tile you want which is then selected by hitting the Enter key. You
- enable the keyboard mouse the same way you would a real mouse, by using
- the " -m" command line option or by selecting it in the setup menu.
-
- ALTERNATE BOARD ARRANGEMENTS
-
- The default tile arrangement is a sort of pyramid shape sometimes
- called "the dragon". In addition to this traditional shape you can
- play using a number of other arrangements. Some arrangements will be
- much easier to solve than the default while others will be nearly
- impossible. You'll also find that you'll need to modify your playing
- stategy to match the arrangement. Board arrangements can be selected
- from the setup menu or from the command line using the " -a" option.
-
- On a few arrangements some of the free tiles are not obvious--they may
- look blocked when they really aren't. Just remember the definition of
- a blocked tile: another tile must block it on the left, right, and
- directly above.
-
- COMMANDS
-
- There are commands you can enter in addition to just selecting tile
- coordinates. Some are accessed by hitting a single letter followed by
- hitting the Enter key; others are accessed by just hitting one of the
- function keys:
-
- A starts the same board again.
- H will give you help selecting tiles. If you ask for
- help at the first tile prompt, you will first be told
- if there are any moves left, then you may choose to
- see any or all of them by hitting Y or N when asked.
- If you ask for help when selecting the 2nd tile it
- will show you any playable matches for the first tile
- you selected.
- N starts a new game using a different board number.
- Q will quit the game and return to DOS.
- R reloads a saved game; pick the one you want from a list.
- S saves your game as MAH#####.SAV, where ##### is the board
- number.
- U undo the last move. Can be used as many times as you
- want until all moves have been undone. (F4 does the
- same thing).
- Z restore a move that was undone. This is the reverse
- of the undo function. You can undo and restore as many
- moves as you want. (F6 does the same thing).
- F1 will display a summary of commands and other information
- and also let you view or print Mah Jongg text files.
- F2 will show the tiles you've removed so far.
- F3 goes to the setup screen. See SETUP SCREEN section below.
- F4 will undo your last move.
- F5 shows you your playing statistics.
- F6 will undo your last undo (e.g., it will remove the tiles
- again).
- F7 goes to the tournament setup screen.
- F8 displays the current tile set.
- F10 shells to DOS. Type 'EXIT' to return to the game.
-
- If you are using a mouse, many of these commands are available as push
- buttons along the left side of the screen. Just slide the cursor over
- the command you want and click. Hitting the right mouse button is a
- short-cut way of asking for help. See the section on using the mouse
- below.
-
- In summary, the commands are:
-
- Q: Quit N: New game (different board)
- H: Help A: Again (replay same board)
- S: Save R: Restore a saved game
- F1: Commands F2: Tiles played so far
- F3: Setup F4: Undo last move (U also works)
- F5: Stats F6: Undo last undo (Z also works)
- F10: DOS shell F7: Tournament setup
- F8: Displays current tile set
-
- COMMAND LINE OPTIONS
-
- Mah Jongg has a large number of options that can be selected when
- starting up the game. These can also be set using the setup screen, or
- if you have the registered version you can use the "MAHSETUP.EXE"
- utility to make your selections permanent.
-
- By making these options available on the command line you can set up
- batch files that will run Mah Jongg in different ways. For example, if
- two different people play on the same computer you could have separate
- batch files for each person where each one would load a different
- statistics file.
-
- The available options are:
-
- -n No title page
- -m use Mouse (or keyboard mouse)
- -bx play Board x (0 <= x <= 65535)
- -b Boards are selected randomly
- -tx Time limited game (x=length in minutes, 30 maximum)
- -t Timed game, timer goes up starting at 0:00
- -cx background Color x (0 <= x <= 15)
- -dx mouse cursor color x (0 <= x <= 15)
- -fn File n is the statistics file
- -f don't keep statistics
- -un Use tile set in file n (-u* loads random tile set)
- -an use board Arrangement in file n (-a* for random layout)
- -y Y/N prompt after selecting tiles
- -g report Game over automatically
- -w on Win show statistics
- -p Peek at remaining tiles when no more moves
- -h run in Hercules graphics mode
- -e run in full color EGA graphics mode
- -l run in Laptop (monochrome EGA) mode
- -li run in Laptop mode with inverse video
- -x disable fireworks in victory screen
- -in tile sets are archived files with extension n
-
- The command line options are done in a standard way but if you're not
- familiar with this sort of thing they may be confusing. Here are some
- examples.
-
- Command line option examples:
-
- If you want to play a game that will be timed for 10 minutes, the
- command line would be:
-
- MAHJONGG -T10
-
- Notice there is no space between the " -T" and the number of minutes
- (10). The other commands work the same way. To use a different set of
- tiles, stored in the file "FLAGS.TIL", either of these two command
- lines would work:
-
- MAHJONGG -UFLAGS.TIL
- MAHJONGG -UFLAGS
-
- To use a randomly selected tile set, use a wild card specification
- instead of a specific file name, such as:
-
- MAHJONGG -U*
- MAHJONGG -UA*.TIL
-
- You can combine commands too, so to play board 12345 with a clock that
- counts up from 0:00 the command line would be:
-
- MAHJONGG -T -B12345
-
- Remember, there is also a setup screen that allows you to select any of
- the options that are available on the command line. Just hit S from
- the title screen to go to setup. You can also access setup at any time
- during a game by hitting the F3 key or by clicking the mouse on the
- button labelled "setup".
-
- If you forget the command line options, just start up the game with an
- invalid option and it will give you the proper usage (i.e., try using
- "mahjongg -?" which since it is not a valid option with give the valid
- option list).
-
- STATISTICS
-
- It seems that a lot of players are interested in game statistics, so
- the game now keeps track of some statistics for you automatically. A
- file is made that keeps track of all the board numbers you've played,
- which ones you've won, your best and worst scores, etc. It also keeps
- track of the last board you played so you can play each board in order
- if you want. By default, this file is saved in the current directory
- under the name "MAHSTATS". You can delete the file to reset your stats.
-
- You can view some of your stats from within the game by hitting the F5
- key. The separate utility program "STATGEN.EXE" can be run on your
- stats file to give a more complete report. Just type "statgen" to run
- it, give it the path and name of your stats file when requested, and a
- complete report will be shown on your screen. For more details, see the
- section on USING STATGEN.
-
- If you have several people playing on the same PC they can each have
- their own statistics file. The statistics file name can be entered
- from the setup screen or by using the command line option " -fn"
- where n is the name of the file. For example, if Fred and Dick both
- use the same PC, Fred might start the game as:
-
- MAHJONGG -FFRED.STT
-
- and Dick might start the game as:
-
- MAHJONGG -F\DICKSDIR\DICK.STT
-
- To disable keeping of statistics, use " -f" with no file name on your
- command line or via the setup screen by hitting the Enter key without
- entering a name. Please note that statistics are only kept when playing
- the default board layout.
-
- TOURNAMENTS
-
- You can play Mah Jongg as a tournament against other players. In a
- tournament each person plays a single board under the exact same
- conditions (same board number and same time limit, if any, etc.),
- allowing their results to be compared and a winner to be determined.
-
- You enter the tournament setup screen either by using the T option from
- the title screen or by hitting F7 at any time during a game. The first
- player sets up the tournament by selecting the board number (or by just
- leaving the one that was randomly chosen) and whether or not the game
- will be timed. After the selections are made the first player enters
- his name and plays the game. A record is kept of his results and the
- results of each additional person who plays the tournament.
-
- If you go to the tournament screen by accident or just to see the
- current standings, you can leave the screen without entering the
- tournament by hitting the ESC key.
-
- If there is already a tournament started but you want to start a new
- one, enter 'N' instead of your name. This will let you set up a new
- tournament as described above. Tournament records are kept in a file
- called "MAH.TRN" so you can also start a new tournament by deleting
- this file.
-
- USING A MOUSE
-
- If you have a mouse driver installed on your computer it will
- automatically be detected when the game starts and mouse play will be
- selected. If for some reason your mouse is not being automatically
- detected you can still select it from the setup screen or by using the
- " -m" option on the command line. You can also use the setup screen to
- turn off the mouse if you wish.
-
- The game was tested using a Mouse Systems PC Mouse and a Genius GM-6
- mouse but any Microsoft-compatible mouse will probably work. When using
- a mouse most commands can be issued using the mouse. You must have your
- mouse driver installed as a device in your "CONFIG.SYS" file for Mah
- Jongg to be able to use the mouse.
-
- The mouse interface is a bit different from what you're probably used
- to but it seems to be easy enough to use. Tiles are selected by moving
- a colored outline over them and then clicking once. To de-select the
- first tile, just click on it a second time. After selecting the second
- tile, if you've selected a valid match, both tiles will be removed.
-
- If you wish, you can have the game ask you to confirm your move before
- the tiles are removed from the board. This option can be selected from
- the setup menu or by using the command line option " -y". With this
- option set, after selecting both tiles a line with the options "Y/N"
- (yes/no) comes up. If you just click without moving the mouse you'll
- select yes and the tiles will be removed. Slide the mouse left and
- right to change your selection.
-
- Many commands available during the game (help, new, undo, file, setup,
- quit) are available as "keys" along the left side of the screen. Move
- the outline over the command you want and click once.
-
- "Help" and "Quit" require a yes or no confirmation so you won't do them
- by accident. Slide the mouse left and right to select yes or no and
- then click.
-
- There are two variations on the help function, depending on whether you
- click the left mouse button or right mouse button on the help "key".
- If you click the left button, you get the normal help command which
- first asks if you want to see matching tiles (if there are no more
- matches it will tell you that instead) and then prompts for a yes or no
- to see each additional matching pair of tiles. If you ask for help
- after you've already selected the first tile a search for matching free
- tiles takes place. If a match is found, it is highlighted and all you
- need to do is confirm to remove the pair of tiles. If no match is
- found it puts you back to select the first tile again.
-
- If you right-click while the help "key" is outlined, you'll be shown
- the tiles that you've removed so far. This is the same function
- available by hitting the F2 key.
-
- There is also a short-cut for mouse users to invoke help. Just hit the
- right mouse button while not pointing to one of the function "keys" to
- get help in selecting either tile.
-
- "New" lets you end the current game and either replay the same board or
- go on to a new board. You will be prompted to select either "next" or
- "again" to either go on to a new board number or to play the same board
- again.
-
- "Undo" replaces the last two tiles you removed. You can undo as many
- times as you want until all 144 tiles are back on the board. Undo does
- not ask for any confirmation. Undo actually allows you to replay your
- entire game both forward and backward. Clicking the left mouse button
- restores tiles that were removed and clicking the right mouse button
- takes the tiles back off again.
-
- "File" lets you either save the game at its current point or load a
- previously saved game. You are prompted to choose between "load" and
- "save". If you pick save you will then be asked to confirm if you
- really want to do it. The game will be saved to a file called
- "MAH#####.SAV" where ##### is the board number.
-
- If you select load a list of saved games will be displayed. Use the
- arrow keys or the mouse to select the game you want, then left click or
- hit the Enter key to load it. Hitting the ESC key or clicking the
- right mouse button will abort the load.
-
- Saved game files have no special attributes so when you're done with
- them you can delete them from the DOS command line or with any shell
- program, etc. that you're familiar with. You can also rename them and
- Mah Jongg will still recognize them as long as the file extension is
- ".SAV".
-
- "Setup" brings up the setup screen, which is fully described below.
-
- Any error messages that appear during the game (i.e. "Invalid
- Selection") normally stay visible for a few seconds before allowing
- play to continue. To immediately remove a message and resume play just
- click the mouse or hit a key.
-
- SETUP SCREEN
-
- The setup screen lets you control many game options. Note that these
- options can also be set from the command line when you start up the
- game. You can access the setup screen by hitting the S key when on
- the title screen, or at any time during the game by hitting the F3 key
- or clicking the mouse on the setup button.
-
- In the setup screen you can select the feature you want changed by
- using its letter, by moving the selection pointer with the arrow keys
- and hitting the Enter key to select, or by using the mouse and left
- clicking to select. You have the same options when choosing colors for
- the cursor or background.
-
- You can exit the setup screen by selecting option Q ("Done"), by
- hitting the ESC key or by right clicking the mouse.
-
- The following items can be controlled from the setup screen:
-
- A) Tile set: Select this option to load a different set of tiles.
- You'll be shown a list of all tile set files available in the current
- directory, and you can use the arrow keys or mouse to select the one
- you want. Hit the Enter key or left click when pointing to the tile
- set you want. Hit the ESC key or right click to abort.
-
- B) Archive Type: Large collections of tile sets can take up a lot of
- disk space so Mah Jongg gives you the option of storing them as
- archived files instead of as *.TIL files. Normally this option will
- be set to "<none>" but if you want to archive tile sets you must set
- it to the extension used on files created by the archiver you wish to
- use. You can also include the drive and path to where the tile set
- files are kept. See the section ARCHIVING TILE SETS for complete
- details.
-
- C) Layout Arrangement: In addition to the default arrangement of tiles
- you can select any of a number of different arrangements using this
- option. Different arrangements are stored on disk as files ending in
- the letters ".BRD". You'll be shown a list of all arrangements
- available which you can pick in the same way you pick tile sets.
-
- D) Statistics File: Use this option to select the name of the file you
- want used for your playing statistics. The default file name is
- "MAHSTATS" and the file is always in the current disk directory. When
- you select this option you'll have to type in the name of the file you
- want. If you want no statistics kept just hit the Enter key instead of
- entering a name. Note that statistics are kept only for the default
- layout arrangement.
-
- E) Board number: Initially this will show the board number you are
- currently playing. If you wish to play a different board select this
- option and then type the number you want.
-
- F) Next board: Normally when you request a new game after finishing the
- current one the next board number will be the current number plus 1.
- Some people prefer board numbers to be selected randomly instead of
- sequentially and this option lets you choose this if you wish.
-
- G) Timed game: By default you're given all the time you want to play
- each board. If you wish the game can be timed. You have a choice of a
- count up timer that will start at zero and count up as long as you play
- a board, or you can have a count down timer where you give it a time in
- minutes to count down from. Both kinds of timer are limited to 30
- minutes and in either case you can continue playing even if the timer
- reaches its limit.
-
- H) Background color: This option lets you change the background color
- of the playing board if you don't like the normal dark blue. If you
- started up the game using the " -l" or " -h" command line options you
- cannot select colors but instead have the choice of normal or inverted
- images for the entire playing board.
-
- I) Mouse cursor color: The mouse cursor may not be easily seen because
- of your monitor or because of the tile set you're using. This option
- lets you change the color to one you can see more easily.
-
- J) Mouse: This function enables or disables the mouse. If you have no
- mouse present it enables the "keyboard mouse" which enables you to use
- the arrow keys to move the cursor instead of playing using coordinates.
-
- K) Y/N prompts: Normally once you have selected both tiles (and
- assuming your selection was a valid one) the tiles will be immediately
- removed from the board. If you prefer you can be prompted before the
- tiles are removed.
-
- When playing using the keyboard this option also controls whether or
- not you have to hit the Enter key after entering the tile coordinates.
- With the option set to yes, you will have to hit Enter after the
- coordinates, otherwise as soon as you enter two characters the tile
- will be selected.
-
- L) Show stats after win: You can view your current statistics at any
- point in the game by hitting the F5 key. This option will cause the
- same statistics screen to be displayed automatically whenever you win a
- game.
-
- M) Report end of game: Use this option to choose whether or not you
- want to be automatically notified when there are no moves left.
-
- N) Peek at end: When this option is set you can peek under (remove)
- any tiles that are left at the end of the game. "Peek Mode" will go
- on automatically when there are no more moves, either reported
- automatically if you have the report end of game option turned on or
- if you manually use the help function to check. To peek under tiles
- you select them as you normally would, by moving the cursor over the
- tile and clicking.
-
- O) Show fireworks: When you win a game a display of fireworks goes off.
- If you want to skip this display set this option to no.
-
- P) Restore defaults: Use this function to undo any setup changes you
- made and go back to the normal settings.
-
- USING STATGEN
-
- Since v3.2, Mah Jongg has come with a utility called "STATGEN.EXE".
- This program allows you to analyze and modify the statistics file that
- is kept each time you play the game.
-
- To run the statistics generator, just type "statgen" on a line by
- itself. You'll be prompted for the filename of your statistics file
- and you'll be asked if you want to edit (enter a letter E) or just
- display (enter a D) your current statistics.
-
- If you select display, you'll be shown your total games played, average
- score, number won and worst score. Then a list of all board numbers
- won and another list of additional boards played will be shown.
-
- If you select edit you can change the list of boards played and won to
- include boards you played before v3.2. Just select edit and you'll
- first be prompted for the boards you've won. Enter one board number
- per line and finally enter a -1 when you're done. Then you'll enter
- the list of additional boards played but not won in the same way.
- Again you enter a -1 when done. After you're done editing statgen will
- show you your current stats so you can confirm that you've entered
- everything correctly.
-
- You can also enter statgen's parameters from the command line. The
- first parameter is the statistics file name and the second is either -e
- (to edit) or -d (to display). If you only enter one parameter display
- is assumed. For example, to edit the statistics file "stats.me" the
- command line would be
-
- statgen stats.me -e
-
- There is also a "batch mode" available for those of you who have kept
- your records in a database. You'll need to transfer your games played
- and games won list into a straight ASCII text file with one board
- number per line and a -1 after the end of the won board list and
- another -1 at the end of the file. For example, if you've played
- boards 100, 101 and 102 and played and won boards 200 and 201 your file
- would look like this:
-
- 200
- 201
- -1
- 100
- 101
- 102
- -1
-
- Save this file under whatever name you choose. For this example we'll
- say it was saved with the filename "TEMP". Then, to read these board
- numbers into your statistics, run statgen as follows:
-
- statgen mahstats -b < temp
-
- This assumes that "statgen.exe" is in your current directory, your
- stats file is called "MAHSTATS" and it also is in the current
- directory and your list of boards is in the file "TEMP". After temp
- has been read in, your new stats will be displayed to verify that
- everything worked. Suggestion: before running in batch mode, make a
- backup copy of your stats file in case something goes wrong.
-
- TECHNICAL NOTES
-
- Many people write asking about how certain aspects of Mah Jongg work.
- This section is intended to cover the most asked questions.
-
- "How are the different boards created?"
-
- There are 65,536 different board layouts available. The arrangements
- are random or at least as random as possible. The game starts with a
- scrambled pile containing all 144 tiles (an array for you programmer
- types). Then, it goes through and takes the tiles one at a time at
- random from the pile and places them on the board.
-
- "OK, if the boards are random how is it that board #1 is always the
- same?"
-
- Computer random number generators don't generate truly random numbers.
- They actually generate a specific series of numbers that are
- essentially distributed randomly. For most purposes the distinction
- doesn't make a difference. Random number generators are generally
- started up by giving them a "seed". The seed itself needs to be
- somewhat random since the same seed will always generate the same
- series of numbers.
-
- Mah Jongg takes advantage of this feature. The board number is
- actually the random number generator seed and so each seed always
- generates the same series of numbers and thus the same board layout.
- The Turbo C language allows seeds to be values from 0 to 65535 which is
- why Mah Jongg has 65,536 possible boards.
-
- "Can all boards be won?"
-
- Definitely not. But then that's true of just about any type of
- solitaire game. After playing enough boards you're certain to run into
- situations where three of the same tile are stacked on top of each
- other or similar things that result in a board that cannot be beaten.
-
- It appears, though, that a large percentage of boards can be beaten. A
- number of people have put great effort into solving series of
- consecutive boards, playing the same board over and over until beaten.
- Their results indicate that at least 50-75% of all boards can be won.
-
- "Can I get a CGA version?"
-
- CGA? Blech. Would you really want to play Mah Jongg on a screen with
- only 1/4th the pixels and only four ugly colors? It just wouldn't be
- the same...
-
- Actually, several people have attempted to do it. The results are
- about what you'd expect though.
-
- "OK, how about a VGA version?"
-
- Sure, this could be done but would it really be worth it? The
- appearance of the board would not be significantly different from the
- EGA version, since VGA is still limited to 16 colors. The vertical
- resolution does improve from 350 to 480 pixels but that would be about
- the only difference, and from what I've seen comparing other programs
- it wouldn't be all that noticeable.
-
- Now SuperVGA is a different story. The problem here is that SuperVGA is
- not a standard (IBM invented VGA but does not support SuperVGA). But
- what mode to support? 640x480? 800x600? Having 256 colors would make
- some really beautiful tile sets possible, but until a real standard is
- available it's just too difficult to try to support all the different
- video boards. It would likely also mean that the hundreds of existing
- tile sets could not be used in the new video mode.
-
- "What language is Mah Jongg written in?"
-
- Mah Jongg is written in Turbo C. I originally used v1.0 but am now
- using v2.0. Since Turbo C v1.0 did not have the graphics library that
- later versions include, Mah Jongg is done entirely with my own graphics
- routines. Tile Maker is written in Turbo Pascal v5.5.
-
- "Can I get the source code?"
-
- Sorry, the source code is not available.
-
-
- REVISION HISTORY
-
- NEW IN 4.0:
-
- Tile sets can be kept in archived files.
-
- Peek function: lets you view any remaining tiles at the end of a game.
-
- End of game (no more moves) can now be detected automatically if
- desired.
-
- Next board can now be either sequential or random.
-
- Keyboard players can choose to not require hitting the Enter key after
- entering coordinates.
-
- Statistics can now be shown automatically when you win a game if
- desired.
-
- Text files (i.e., documentation, order forms, etc.) can now be viewed
- or printed from within the game.
-
- Mouse control added to setup menu, file selection lists, etc.
-
- Different board arrangements in addition to the traditional "dragon"
- layout are now available.
-
- Command line option -u changed to allow either a specific tile set to
- be loaded or a randomly selected tile set.
-
- Bug fix to statgen related to timed games.
-
- The confirm move option now defaults to off (don't require confirmation
- of moves).
-
- The F8-tile set view screen now includes the tile artist's name.
-
- Extensive changes to Tile Maker.
-
- NEW IN 3.51:
-
- The changes made to board number handling in v3.5 broke the -b command
- line option; this is now fixed
-
- Previous versions only allowed 200 option tile set files in a
- directory; this limit has now been increased to 400
-
- NEW IN 3.5:
-
- Mouse users can now access the "see tiles played" function (which is
- still available by hitting the F2 key) by right clicking on the help
- "key" on the left side of the screen
-
- Time function (available in setup screen or from command line option
- " -t") displays a timer that counts up from 0:00; old count down timer
- option is still available as before; stats kept of fastest won game if
- either timer function is used
-
- Stats keeps track of last board played so that each time you start up
- the game you'll automatically get the next consecutive board number
-
- Bug fix in tournament time limits
-
- A small number of people seem to have problems with the fireworks
- display after winning a board; a command line option -x now allows the
- fireworks to be disabled
-
- Tile Maker now displays a blank tile face when doing a clear
-
- Tile Maker now allows loading from PCX pictures
-
- Tile Maker has new color change tool
-
- Tile Maker now updates tile set viewed by "re-read" and "view last"
- functions when a tile is saved to disk
-
- Tile Maker undo function enhanced
-
- NEW IN 3.4:
-
- Stats file "MAHSTATS" now defaults to current directory
-
- Tile files can be selected from a list instead of by name in setup
- screen
-
- Hitting F8 displays the currently loaded tile set
-
- Saved games are now selected from a list, as games are now saved with
- the filename MAH#####.SAV where ##### is the board number
-
- Keyboard 'mouse' allows keyboard users to play using arrow keys instead
- of entering coordinates
-
- NEW IN 3.3:
-
- Alternate tile sets can be used
-
- Y/N prompts can be disabled
-
- New "victory" screen
-
- Hercules mode bug fix
-
- NEW IN 3.2:
-
- "Boss Mode" has been replaced by a true shell to DOS
-
- Records kept of boards played and won:
- If the current board has been played before, an asterisk
- will appear next to the board number; if the board has
- been won, the word "WON" will appear next to the board
- number
-
- Separate statistics generator program displays your stats plus list of
- boards played and won
-
- Improved accuracy of average score statistic
-
- Automatically enables mouse play if mouse driver detected
-
- Exit screen written directly to memory instead of using ANSI
-
- NEW IN 3.1:
-
- Stats no longer overflow
-
- Stats now correctly update when you win a game
-
- Tournament setup screen now available during game
-
- Automatically detects EGA and Hercules cards
-
- Monochrome EGA selectable for LCD laptop computers
-
- Command line parameters can be made permanent using setup program
- (available to registered users only)
-
- NEW IN 3.0:
-
- Runs in Hercules graphics mode
-
- Game statistics kept for current game and for all games played
-
- Undo command (both forward and backward)
-
- Setup screen available during game
-
- Tile corners now display properly
-
- NEW IN 2.7:
-
- Fixed bug in tournament mode (stats weren't being saved)
-
- A list of all pairs of tiles played so far is available by hitting the
- F2 key
-
- NEW IN 2.6:
-
- Mouse cursor color is now selectable from command line or setup screen
-
- When playing a tournament game your score was not always saved if you
- completed the board; this is now fixed
-
- NEW IN 2.4:
-
- Help screen -- hit F1 to get a list of commands, options, and some
- basic playing tips
-
- "Boss Mode" -- hit F10 to hide the game and display a harmless looking
- disk directory
-
- New tournaments can be started from within the tournament setup screen
-
- After winning a game, answering "Y" to play again gives you a different
- board instead of the same one over again
-
- Requesting to quit when selecting the second tile now asks for a
- confirmation
-
- NEW IN 2.3:
-
- Columns entered as letters instead of numbers; rows and columns can be
- entered in any order as a result
-
- Several tiles redrawn
-
- NEW IN 2.2:
-
- ATI EGAWonder card problem work around added
-
- Mouse cursor display sped up (possible fix to NEC EGA card problem of
- not showing mouse cursor)
-
- NEW IN 2.1:
-
- Help on 2nd tile selection (find match to 1st tile if any)
-
- Help available with right mouse button as a short-cut
-
- Error messages can be cancelled by clicking the mouse
-
- Confirmation required for mouse action "keys" to prevent accidents
-
- NEW IN 2.0:
-
- Mouse support
-
- Setup screen, allows access to all game options more easily than
- through command line options
-
- Tournament play
-
- Selectable background color
-
- New commands during play
- A (play same board Again)
- N (play New board)
-
- More command line options
- -cx (background Color)
- -r (Restart saved game)
- -m (use Mouse)
-
- More authentic tile appearance
-
- Faster tile displaying
-
-
- WINNING
-
- Not all boards are win-able but during testing a number of boards that
- are beatable were found. In addition, many people who have written to
- register their copy of Mah Jongg have included lists of boards they
- have completed. If you want to play a board that definitely can be
- won, try one of the following:
-
- 1, 2, 8, 14, 21, 23, 43, 56, 148, 290, 302, 307, 329, 364, 370, 386,
- 421, 433, 459, 560, 627, 634, 656, 695, 735, 743, 795, 800, 819, 827,
- 839, 858, 876, 888, 890, 905, 936, 952, 985, 1034, 1037, 1066, 1101,
- 1104, 1132, 1138, 1145, 1149, 1154, 1207, 1241, 1244, 1296, 1313, 1346,
- 1365, 1390, 1392, 1428, 1430, 1490, 1543, 3459, 3989, 4113, 4236, 4243,
- 4344, 4540, 5119, 5336, 6108, 6843, 7332, 7971, 8694, 8922, 9619,
- 10796, 12224, 12909, 13692, 13932, 15037, 15318, 15441, 15625, 15784,
- 16213, 16435, 16496, 16965, 17604, 19619, 20009, 20926, 21015, 21399,
- 23986, 24654, 24942, 25139, 26208, 27869, 28483, 29514, 29885, 30000,
- 30004, 30007, 30008, 32141, 32381, 32812, 33212, 33357, 36607, 36785,
- 36792, 36836, 37696, 38110, 38313, 38382, 38449, 40060, 40111, 40284,
- 40640, 41121, 41619, 42246, 43055, 43421, 43880, 43924, 44213, 45000,
- 45355, 45466, 47046, 47615, 47779, 47788, 47924, 48094, 48165, 48278,
- 49070, 49522, 50054, 50333, 50408, 50542, 52079, 52158, 52916, 53414,
- 53751, 54176, 54438, 54491, 54586, 55082, 55309, 55598, 56185, 56447,
- 56809, 57572, 58094, 59498, 61319, 62500, 63202, 63331, 63866, 64557,
- 64856, 65123.
-
- Enjoy!
-
-
- *****************************************************************************
- * INCLUDED FILES *
- *****************************************************************************
-
- The following files are included in Mah Jongg solitaire:
-
- MAHJONGG.EXE Mah Jongg program
- MAHJONGG.DOC This file
- MAHJONGG.HLP Help file used by the game
- MAHJONGG.TXT A brief description of Mah Jongg
- ORDERFRM.TXT Ready to print registration form
- UKORDER.TXT Registration form for U.K. residents
- SHAREWRE.TXT Information on Shareware
- VENDOR.TXT Information for shareware vendors/BBS sysops
- STATGEN.EXE Statistics generator program
- TILEMAKR.EXE Tile set editing utility
- TILEMAKR.DOC Complete Tile Maker instructions
- TILEMAKR.HLP Help file used by Tile Maker
- TEXTVIEW.EXE Utility for viewing text files
- MAHJONGG.TIL Standard tile set
- FLAGS.TIL Flags of the world tile set
- FLAGS.TXT Text file describing FLAGS.TIL
- TILEARCH.BAT Sample batch file for archived tile sets
- *.BRD Different board layouts
-
- You are free to pass this program along to friends, give it to user
- groups, upload to BBSes, etc. with the understanding that anyone who
- continues to use the game is required to register it. All these files
- MUST be included when distributing this program. If you archive the
- program for distribution through BBS's, please use the name
- MAHJNG40.ZIP (or .LZH, .PAK, etc. as appropriate).
-
-
- *****************************************************************************
- * REGISTRATION *
- *****************************************************************************
-
- Please remember that Mah Jongg is not free software. As with all
- Shareware you are expected to purchase it after you've given it a
- reasonable trial.
-
- The registration price for Mah Jongg is $15 (#12.95 U.K.), for which
- you'll receive by return mail:
-
- - a copy of the latest version with the shareware reminders removed
- - a setup utility that lets you make your playing options permanent
- - several additional tile sets
- - more different board layouts
- - and possibly another Shareware game to try out (disk space allowing)
-
- Collections of tile sets created by various Mah Jongg players are also
- available for $5 each. Each disk includes ten or more tile sets.
-
- A deluxe version of Mah Jongg is also available. This includes a
- storage case, printed manual, quick reference card, plus the registered
- version of the game. This version is available for $22. Note that the
- actual software is the same in both versions.
-
- Please include $2 for shipping/handling along with the payment for
- whatever item(s) you order; if ordering deluxe versions please include
- $4. Outside North America please include $4 for shipping/handling on
- all orders. Please note that all prices are U.S. dollars.
-
- If you live in the U.K. you can register through Nildram Software.
- Please print the file UKORDER.TXT for an order form all ready to go or
- just send #12.95 to:
-
- Nildram Software
- 26 Stanley Hill Avenue
- Amersham
- Bucks HP7 9BD
-
-
- *****************************************************************************
- * DISCLAIMER OF WARRANTY *
- *****************************************************************************
-
- This software is sold "as is", without any warranty as to performance
- or any other warranties whether expressed or implied. Because of the
- many hardware and software environments into which this program may be
- used, no warranty of fitness for a particular purpose is offered. The
- user must assume the entire risk of using the program. Any liability
- of the seller will be limited exclusively to product replacement or the
- refund of the registration fee.
-
-
- *****************************************************************************
- * ASSOCIATION OF SHAREWARE PROFESSIONALS *
- *****************************************************************************
-
- This software is produced by Nels Anderson who is a member of the
- Association of Shareware Professionals (ASP). ASP wants to make sure
- that the shareware principle works for you. If you are unable to
- resolve a shareware-related problem with an ASP member by contacting
- the member directly, ASP may be able to help.
-
- The ASP Ombudsman can help you resolve a dispute or problem with an ASP
- member, but does not provide technical support for members' products.
- Please write to the ASP Ombudsman at 545 Grover Road, Muskegon, MI
- 49442, USA or send a CompuServe message via email to ASP Ombudsman
- 70007,3536.
-
- _______
- ____|__ | (R)
- --| | |-------------------
- | ____|__ | Association of
- | | |_| Shareware
- |__| o | Professionals
- -----| | |---------------------
- |___|___| MEMBER
-
-
- *****************************************************************************
- * FINDING MAH JONGG *
- *****************************************************************************
-
- The best place to find Mah Jongg updates, tile sets, etc. is on
- Xevious, the official support board. In addition, I will upload updates
- as available to the following BBSes:
-
- Channel 1 (Cambridge, MA): 617-354-8873
- Software Creations (Clinton, MA): 508-365-9669
- Sound Advice (Gladstone, MO): 816-436-4516
- Xevious (Framingham, MA): 508-875-3618
-
-
- *****************************************************************************
- * AVAILABLE SOFTWARE *
- *****************************************************************************
-
- Other software which I've either written or contributed to:
-
- TMATCH: Tile Match is another solitaire game that uses the same
- colorful tile sets originally created for Mah Jongg.
- It's based on concentration solitaire or "memory" but
- adds a wide variety of features. Play it solitaire,
- against the computer or with up to four players.
-
- MAHJONGG: Solitaire game played with Chinese tiles. Supports
- EGA and Hercules graphics; mouse optional. See reviews
- in December 1988 "PCWorld" and April 1989 "Compute!".
-
- TILESETS: Several collections of tile sets created by various
- Mah Jongg fans are available. Each collection includes
- at least ten tile sets. Requires Mah Jongg v3.3 or later
- or any version of Tile Match.
-
- SHOOT: "Shooting Gallery" tests your aim and reflexes in a
- number of different rounds of shooting. Uses MCGA/VGA
- graphics mode for 256 colors and and also requires
- a mouse. See review in "PC Magazine" vol. 9 #20.
-
- EGATREK: Space strategy battle game, using full EGA graphics,
- based on the classic minicomputer game. Winner of
- Public Brand Software's 1988 software contest. Chosen
- as top game of its type by "Shareware Magazine",
- July/August 1990.
-
- SUPERFLY: An action game in which your house has been invaded by
- a variety of bugs which you must swat while searching
- for the "Super Fly". Includes 20 different rounds, 3
- skill levels. Supports hi-res EGA and VGA. See review
- in "PC Magazine" (10/15/91).
-
- CIPHER: A crypto-quotes type word game that runs in full color
- VGA or EGA graphics mode. Can be played with a mouse
- or keyboard. Also supports text modes.
-
- CIPHWN: Cipher for Windows. All the features of regular
- CIPHER but runs under the Microsoft Windows 3.x
- environment.
-
- BASSTOUR: (Written by Dick Olsen). Game that simulates a fishing
- tournament, including rod and lure selection. Runs in
- EGA/CGA/MCGA/Hercules graphics modes.
-
- BASSMAP: Companion program for BassTour which allows lakes to be
- created or modified. EGA and CGA versions included.
-
- - - - - -
-
- Mah Jongg is copyright (c) 1987-1993 by Nels Anderson. All rights reserved.
-